# -*- coding:utf-8 -*-
# @FileName     :ship.py
# @Time         :2021/8/17 10:37
# @Author       :Wu Hongyi
# @Copyright    :Wu Hongyi
# Function description:
'''
Alien Invasion 游戏桌中的飞船相关的类
'''
# @version      :Version1.0
# Modification description:
'''
1-2021/08/17    注意：pygame让你能够像处理矩形（rect 对象）一样处理所有的游戏元素，即便其形状并非矩形


'''

import pygame

class Ship:
    """管理飞船的类"""

    def __init__(self, ai_game):
        """初始化飞船并设置其初始位置"""

        self.screen = ai_game.screen
        self.screen_rect = ai_game.screen.get_rect()
        # 使用方法get_rect() 访问屏幕的属性rect ，并将其赋给了self.screen_rect ，让我们能够将飞船放到屏幕的正确位置

        # 加载飞船图像并获取其外接矩形
        self.image = pygame.image.load('images/ship.bmp') # 加载图像并将飞船图像的位置传递给它，该函数返回一个表示飞船的surface
        self.rect = self.image.get_rect()   # 使用get_rect()获取相应surface的属性rect ，以便后面能够使用它来指定飞船的位置。

        # 对于每艘新飞船，都将其放在屏幕底部的中央
        self.rect.midbottom = self.screen_rect.midbottom

    def blitme(self):
        """在指定位置绘制飞船"""

        self.screen.blit(self.image, self.rect)     # 将图像绘制到self.rect 指定的位置。
